}
if (payload) {
validateBuffer(payload, 'payload');
- }
- if (payload && payload.length !== 8) {
- throw new ERR_HTTP2_PING_LENGTH();
+ if (payload.byteLength !== 8) {
+ throw new ERR_HTTP2_PING_LENGTH();
+ }
}
validateFunction(callback, 'callback');
})));
}
{
- const payload = Buffer.from('abcdefgi');
+ const payload = new Uint16Array([1, 2, 3, 4]);
assert(client.ping(payload, common.mustCall((err, duration, ret) => {
assert.strictEqual(err, null);
assert.strictEqual(typeof duration, 'number');
- assert.deepStrictEqual(payload, ret);
+ assert.deepStrictEqual(payload.buffer, ret.buffer);
})));
}
{
const shortPayload = Buffer.from('abcdefg');
const longPayload = Buffer.from('abcdefghi');
- [shortPayload, longPayload].forEach((payloadWithInvalidLength) =>
+ const mismatchedPayload = new Uint32Array(8);
+ [shortPayload, longPayload, mismatchedPayload].forEach((payloadWithInvalidLength) =>
assert.throws(
() => client.ping(payloadWithInvalidLength),
{